System to record and analyze voice message usage information

ABSTRACT

A voice message system records voice message usage information by creating voice message records when a voice message is sent and when it is received. The voice message record includes: the voice message, a voice message sender identity, a voice message recipient identity, and voice message action records. A voice message action records includes a voice message action that specifies an action on the voice message, and a voice message action time that includes the time at which the action occurs. Voice message actions include sent, received, and listened. The system further includes a voice message analyzer for analyzing voice message records, and a voice message reporter for generating reports from an analysis by the analyzer. The voice message system provides tractable information for voice messages, allowing companies to enforce a voice message usage policy.

BACKGROUND

1. Field

This invention relates generally to telecommunications, and morespecifically, to a system to record and analyze voice message usageinformation.

2. Related Art

Voice mail systems, also known as voice message systems, gainedpopularity in the corporate world since its introduction in late 1970s.A user can leave a voice message at a voice mail system for another userwithout the assistance of an attendant or a secretary. Likewise, a usercan listen to his or her voice messages from a voice mail system withoutthe assistance of an attendant or a secretary.

Voice mail systems have since become an essential communications toolfor businesses, government agencies, education institutions andcommunities. While providing convenience for the users to conductbusiness and for personal use, the usage of voice messages forcommunications creates a set of privacy problems.

In one example, John works for Central Realtors as a real estate broker.John uses the company's voice message system for both business andpersonal purposes. The company publishes a voice message usage policy,which respects the privacy of its employees. However, there is notractable information to allow the company to distinguish between abusiness voice message and a personal voice message in order to applyusage measures as stated.

In another example, the management of Corner Technologies suspects thatan employee has been leaking proprietary information to a competitor,and would like to collect evidence, including the employee's voicemessages between Aug. 10 and Aug. 22, 2003. However, the employee hasalready deleted these voice messages, and there is no consistent backupprocedure to ensure the availability of deleted voice messages.

Accordingly, there exists a need for a method and system for recordingand analyzing voice message usage information. The present inventionaddresses such a need.

SUMMARY

A voice message system records voice message usage information bycreating voice message records when a voice message is sent and when itis received. The voice message record includes: the voice message, avoice message sender identity, a voice message recipient identity, andvoice message action records. A voice message action records includes avoice message action that specifies an action on the voice message, anda voice message action time that includes the time at which the actionoccurs. Voice message actions include sent, received, and listened. Thesystem further includes a voice message analyzer for analyzing voicemessage records, and a voice message reporter for generating reportsfrom an analysis by the analyzer. The voice message system providestractable information for voice messages, allowing companies to enforcea voice message usage policy.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 illustrates a Voice Message, a Voice Message Sender, and a VoiceMessage Recipient.

FIG. 2 illustrates a Voice Message Record.

FIG. 3 illustrates a Voice Message System.

FIG. 4 illustrates a process to record sending information about a VoiceMessage.

FIG. 5 illustrates a process to record receiving information about aVoice Message.

FIG. 6 illustrates a process to record listening information about VoiceMessage.

FIG. 7 illustrates a process of analyzing a plurality of Voice MessageRecords.

FIG. 8 illustrates a process of reporting on a plurality of VoiceMessage Records.

DETAILED DESCRIPTION

FIG. 1 illustrates a Voice Message 150, a Voice Message Sender 111 and aVoice Message Recipient 119. Voice Message 150 includes a recordedspoken message from Voice Message Sender 111 to Voice Message Recipient119.

FIG. 2 illustrates a Voice Message Record. A Voice Message Recordincludes usage information about a Voice Message.

A Voice Message Record 200 includes a Voice Message 210, a Voice MessageSender Identity 220, a Voice Message Recipient Identity 230, and aplurality of Voice Message Action Records 250.

Voice Message Sender Identity 220 identifies the Voice Message Sender111 who sends a Voice Message 210. Voice Message Recipient Identity 230identifies the Voice Message Recipient 119 who receives the VoiceMessage 210.

A Voice Message Action Record 250 records one or more actions on VoiceMessage 210.

A Voice Message Action Record 250 includes a Voice Message Action 251that specifies the action, and a Voice Message Action Time 255 thatincludes the time at which the action indicated in Voice Message Action251 occurs. In one embodiment, Voice Message Action Time 255 includesthe time of day at which the action occurs. In another embodiment, VoiceMessage Action Time 255 includes the time period during which the actionoccurs.

FIG. 3 illustrates a Voice Message System.

Voice Message System 310 connects to a Datastore 350. Datastore 350stores a plurality of Voice Message Records. A Voice Message Sender 311connects to Voice Message System 310 to send a Voice Message. A VoiceMessage Recipient 319 connects to a Voice Message System 310 to listento a Voice Message.

Voice Message System 310 includes a plurality of processes. Oneembodiment includes processes to record sending information, receivinginformation, or listening information about a Voice Message. Oneembodiment includes processes of analyzing or reporting on the pluralityof Voice Message Records. The processes are discussed in subsequentillustrations.

FIG. 4 illustrates a process to record sending information about a VoiceMessage.

A Voice Message Sender 411 connects to a Voice Message System 410 andsends a Voice Message 480. The recipient of Voice Message 480 is VoiceMessage Recipient 419. Voice Message System 410 receives Voice Message480. Voice Message System 410 creates a Voice Message Record.

Voice Message System 410 includes Voice Message 480 in the Voice MessageRecord for the sent Voice Message.

Voice Message System 410 includes a Voice Message Sender Identity ofVoice Message Sender 411 in the Voice Message Record.

In one embodiment, Voice Message Sender 411 connects to Voice MessageSystem 410 in a telephone call via a telephone system. In oneembodiment, the telephone system provides to Voice Message System 410 atelephone extension number of the telephone used in the connection.Voice Message System 410 includes the telephone extension number in theVoice Message Sender Identity. In one embodiment, Voice Message System410 obtains a user name based on the telephone extension number. VoiceMessage System 410 includes the user name in the Voice Message SenderIdentity. In another embodiment, the telephone system provides VoiceMessage System 410 the calling party telephone number of the telephonecall. Voice Message System 410 includes the calling party telephonenumber in the Voice Message Sender Identity. In one embodiment, thetelephone system provides Voice Message System 410 the caller identityof the telephone call. Voice Message System 410 includes the calleridentity in the Voice Message Sender Identity. In one other embodiment,Voice Message System 410 prompts Voice Message Sender 411 forinformation about Voice Message Sender 411. Voice Message Sender 411provides Voice Message System 410 the information. Voice Message System410 includes the information in the Voice Message Sender Identity. Inone embodiment, the information includes a user identity for the VoiceMessage Sender 411.

In another embodiment, Voice Message Sender 411 connects to VoiceMessage System 410 via an electronic message system. Voice MessageSender 411 sends Voice Message 480 in an electronic message. In oneembodiment, the electronic message system provides Voice Message System410 a sender identity of the electronic message.

Voice Message System 410 includes the sender identity in the VoiceMessage Sender Identity.

Voice Message System 410 includes a Voice Message Recipient Identity ofVoice Message Recipient 419 in the Voice Message Record.

In one embodiment, Voice Message Sender 411 connects to Voice MessageSystem 410 in a telephone call via a telephone system. In oneembodiment, the telephone system provides Voice Message System 410 thedigits Voice Message Sender 411 dials when setting up the telephonecall. Voice Message System 410 includes the dialed digits in the VoiceMessage Recipient Identity. In another embodiment, Voice Message System410 prompts Voice Message Sender 411 for information about Voice MessageRecipient 419. Voice Message Sender 411 provides Voice Message System410 the information. Voice Message System 410 includes the informationin the Voice Message Recipient Identity. In one embodiment, theinformation includes a user identity for the Voice Message Recipient419.

In another embodiment, Voice Message Sender 411 connects to VoiceMessage System 410 via an electronic message system. Voice MessageSender 411 sends Voice Message 480 in an electronic message. In oneembodiment, the electronic message system provides Voice Message System410 a recipient identity of the electronic message.

Voice Message System 410 includes the recipient identity in the VoiceMessage Recipient Identity.

Voice Message System 410 further includes in the Voice Message Record aVoice Message Action Record with Voice Message Action set to ActionSend. In one embodiment, Voice Message System 410 includes the currenttime of day in the Voice Message Action Time of the Voice Message ActionRecord. In another embodiment, the electronic message system providesVoice Message System 410 a sending time. The sending time is the time ofday when Voice Message Sender 411 sends the electronic message thatincludes Voice Message 480. Voice Message System 410 includes thesending time in the Voice Message Action Time of the Voice MessageAction Record.

In one embodiment, the Voice Message Sender Identity in a Voice MessageRecord indicates the location of the Voice Message Sender 411 identifiedby the Voice Message Sender Identity at the time when the Voice MessageSender 411 sends the Voice Message 480 that is included in the VoiceMessage Record. In one embodiment, the Voice Message Sender Identityincludes a telephone extension number. In one embodiment, the telephoneextension number indicates the location based on a telephone wiring planof a Private Branch Exchange (PBX) that connects to the telephoneextension. In one embodiment, the location is a cubicle. In anotherembodiment, the location is a conference room. In one other embodiment,the location is the front lobby of a building. In another embodiment,the Voice Message Sender Identity includes a calling party telephonenumber. In one embodiment, the calling party indicates the locationbased on information about the telephone service associated with thetelephone number. In one embodiment, the telephone service is aresidential telephone service; the location is a street address of theservice subscription. In another embodiment, the telephone service is amobile telephone service; the location is a street address of a wirelessbase station that serves the telephone call the Voice Message Sender 411uses to send the Voice Message 480.

In one embodiment, Voice Message System 410 stores the Voice MessageRecord in Datastore 450. In one embodiment, Datastore 450 is a flashmemory. In another embodiment, Datastore 450 is a hard disk. In yetanother embodiment, Datastore 450 is a memory. In one other embodiment,Datastore 450 is a database. In one embodiment, Voice Message System 410includes the Datastore 450.

FIG. 5 illustrates a process to record receiving information about aVoice Message.

When Voice Message System 510 receives a Voice Message 580 from a VoiceMessage Sender 511 for a Voice Message Recipient 519, Voice MessageSystem 510 creates a Voice Message Record.

Voice Message System 510 includes Voice Message 580 in the Voice MessageRecord.

Voice Message System 510 includes a Voice Message Sender Identity ofVoice Message Sender 511 in the Voice Message Record.

In one embodiment, Voice Message Sender 511 connects to Voice MessageSystem 510 in a telephone call via a telephone system. In oneembodiment, the telephone system provides Voice Message System 510 atelephone extension number of the telephone used in the connection.Voice Message System 510 includes the telephone extension number in theVoice Message Sender Identity. In one embodiment, Voice Message System510 obtains a user name based on the telephone extension number. VoiceMessage System 510 includes the user name in the Voice Message SenderIdentity. In another embodiment, the telephone system provides VoiceMessage System 510 the calling party telephone number of the telephonecall. Voice Message System 510 includes the calling party telephonenumber in the Voice Message Sender Identity. In one embodiment, thetelephone system provides Voice Message System 510 the caller identityof the telephone call. Voice Message System 510 includes the calleridentity in the Voice Message Sender Identity. In one other embodiment,Voice Message System 510 prompts Voice Message Sender 11 for informationabout Voice Message Sender 511. Voice Message Sender 511 provides VoiceMessage System 510 the information. Voice Message System 510 includesthe information in the Voice Message Sender Identity. In one embodiment,the information includes a user identity for the Voice Message Sender511.

In another embodiment, Voice Message Sender 511 connects to VoiceMessage System 510 via an electronic message system. Voice MessageSender 511 sends Voice Message 580 in an electronic message. In oneembodiment, the electronic message system provides Voice Message System510 a sender identity of the electronic message.

Voice Message System 510 includes the sender identity in the VoiceMessage Sender Identity.

Voice Message System 510 includes a Voice Message Recipient Identity ofVoice Message Recipient 519 in the Voice Message Record.

In one embodiment, Voice Message Sender 511 connects to Voice MessageSystem 510 in a telephone call via a telephone system. In oneembodiment, the telephone system provides Voice Message System 510 thedigits the phone system receives for setting up the telephone call.Voice Message System 510 includes the received digits in the VoiceMessage Recipient Identity. In one embodiment, Voice Message System 510maps the received digits to a telephone extension number. Voice MessageSystem 510 includes the telephone extension number in the Voice MessageRecipient Identity. In one embodiment, Voice Message System 510 obtainsa user name based on the telephone extension number. Voice MessageSystem 510 includes the user name in the Voice Message RecipientIdentity. In another embodiment, Voice Message System 510 obtains a username based on the received digits. Voice Message System 510 includes theuser name in the Voice Message Recipient Identity. In one otherembodiment, Voice Message System 510 prompts Voice Message Sender 511for information about Voice Message Recipient 519. Voice Message Sender511 provides Voice Message System 510 the information. Voice MessageSystem 510 includes the information in the Voice Message RecipientIdentity. In one embodiment, the information includes a user identityfor the Voice Message Recipient 519.

In another embodiment, Voice Message Sender 511 connects to VoiceMessage System 510 via an electronic message system. Voice MessageSender 511 sends Voice Message 580 in an electronic message. In oneembodiment, the electronic message system provides Voice Message System510 a recipient identity of the electronic message. Voice Message System510 includes the recipient identity in the Voice Message RecipientIdentity.

Voice Message System 510 further includes a Voice Message Action Recordin the Voice Message Record with Voice Message Action set to ActionReceive. In one embodiment, Voice Message System 510 includes thecurrent time of day in the Voice Message Action Time of the VoiceMessage Action Record. In one embodiment, Voice Message 580 is sent tomore than one Voice Message Recipient. A Voice Message Action Recordwould then be created for the Voice Message received by each VoiceMessage Recipient.

In one embodiment, Voice Message System 510 stores the Voice MessageRecord in Datastore 550. In one embodiment, Datastore 550 is a flashmemory. In another embodiment, Datastore 550 is a hard disk. In yetanother embodiment, Datastore 550 is a memory. In one other embodiment,Datastore 550 is a database. In one embodiment, Voice Message System 510includes the Datastore 550.

FIG. 6 illustrates a process to record listening information about VoiceMessage.

In one embodiment, a User 619 connects to Voice Message System 610. User619 submits to Voice Message System 610 an identity. In one embodiment,Voice Message System 610 selects from Datastore 650 a Voice MessageRecord with Voice Message Recipient Identity matching the submittedidentity, and that includes a Voice Message Action Record with VoiceMessage Action of Action Receive.

Voice Message System 610 updates the selected Voice Message Record witha Voice Message Action Record. The Voice Message Action Record has VoiceMessage Action set to Action Listen. In one embodiment, Voice MessageSystem 610 updates the selected Voice Message Record after the VoiceMessage Record is selected. In one embodiment, Voice Message System 610updates the selected Voice Message Record after User 619 listens to theVoice Message included in the selected Voice Message Record. In oneembodiment, Voice Message System 610 includes in the Voice MessageAction Time of the Voice Message Action Record the time of day when User619 listens to the Voice Message. In one embodiment, Voice MessageSystem 610 includes in the Voice Message Action Time of the VoiceMessage Action Record the time period during when User 619 listens tothe Voice Message. In one embodiment, User 619 deletes the Voice Messageafter listening to the Voice Message. Voice Message System 610 includesa Voice Message Action Record in the Voice Message Record with VoiceMessage Action set to Action Delete. In one embodiment, User 619forwards the Voice Message to another Voice Message Recipient. VoiceMessage System 610 includes a Voice Message Action Record in the VoiceMessage Record with Voice Message Action set to Action Forward. In oneembodiment, Voice Message System 610 additionally creates a new VoiceMessage Record for the forwarded Voice Message with Voice Message ActionRecord set to Action Sent.

In one embodiment, when a User 619 wants to listen to a voice message,Voice Message System 610 selects a voice message that has not beenlistened to. In this embodiment, Voice Message System 610 selects fromDatastore 650 a Voice Message Record that includes a Voice MessageRecipient Identity matching the identity submitted by the User 619, andthat includes a Voice Message Action Record with Voice Message Action ofAction Receive, and that does not include a Voice Message Action Recordwith Voice Message Action of Action Listen.

In another embodiment, when a User 619 wants to listen to a voicemessage, Voice Message System 650 selects a voice message even if thevoice message has been listened to. Voice Message System 610 selectsfrom Datastore 650 a Voice Message Record that includes a Voice MessageRecipient Identity matching the identity submitted by the User 619, andthat includes a Voice Message Action Record with Voice Message Action ofAction Receive. Each time the User 619 listens to the Voice Messageincluded in the selected Voice Message Record, Voice Message System 610adds a Voice Message Action Record to the selected Voice Message Record.

In one embodiment, Voice Message Action Record includes a User ActionAttribute. In one embodiment, User Action Attribute includes informationabout the connection over which a User 619 listens to a voice message.In one embodiment, the information about the connection indicates thelocation where the User 619 listens to the voice message. In oneembodiment, a User 619 connects to Voice Message System 610 in atelephone call via a telephone system to listen to a voice message. Inone embodiment, the telephone system provides Voice Message System 610 atelephone extension number of the telephone used in the connection.Voice Message System 610 includes the telephone extension number in theUser Action Attribute. In another embodiment, the telephone systemprovides Voice Message System 610 a calling party telephone number ofthe telephone call. Voice Message System 610 includes the calling partytelephone number in the User Action Attribute. In yet anotherembodiment, the telephone system provides Voice Message System 610 acaller identity of the telephone call. Voice Message System 610 includesthe caller identity in the User Action Attribute.

In one embodiment, User Action Attribute includes the identity of afirst User who listens to a voice message for a second User. In oneembodiment, a first User connects to Voice Message System 610 to listento a voice message. The first User submits to Voice Message System 610an identity of the first User and an identity of a second User. VoiceMessage System 610 selects a Voice Message Record with Voice MessageRecipient Identity matching the identity of the second User. VoiceMessage System 610 updates the selected Voice Message Record with aVoice Message Action Record. Voice Message System 610 includes theidentity of the first User in the User Action Attribute. In thisembodiment, a manager can delegate to her secretary to listen to hervoice messages with proper recording of usage information.

In one embodiment, Voice Message System 610 stores the updated VoiceMessage Record in Datastore 650. In one embodiment, Datastore 650 is aflash memory. In another embodiment, Datastore 650 is a hard disk. Inyet another embodiment, Datastore 650 is a memory. In one otherembodiment, Datastore 650 is a database. In one embodiment, VoiceMessage System 610 includes the Datastore 650.

FIG. 7 illustrates a process of analyzing a plurality of Voice MessageRecords.

Voice Message System includes a Voice Message Analyzer 710. VoiceMessage Analyzer 710 connects to Datastore 750. Voice Message Analyzer710 analyses a plurality of Voice Message Records regarding usageinformation. In one embodiment, the analysis answers a query. In oneembodiment, the result of the analysis is for generating a report.

In one embodiment, Voice Message Analyzer 710 answers the query “Who hasreceived a voice message from John Smith?” Voice Message Analyzer 710selects from Datastore 750 all Voice Message Record with Voice MessageSender Identity that matches the name “John Smith”, and that includes aVoice Message Action Record with Voice Message Action of Action Receive.Voice Message Analyzer 710 extracts from the selected zero or more VoiceMessage Record the Voice Message Recipient Identity as the result of theanalysis. In one embodiment, John Smith uses a plurality of telephonesto send voice messages, Voice Message Analyzer 710 matches the VoiceMessage Sender Identity against a plurality of telephone numbers JohnSmith uses.

In one embodiment, Voice Message Analyzer 710 answers the query “Who hassent a voice message to telephone extension number 3325?” Voice MessageAnalyzer 710 selects from Datastore 750 all Voice Message Record withVoice Message Recipient Identity that matches telephone extension number“3325”, and that includes a Voice Message Action Record with VoiceMessage Action of Action Send. Voice Message Analyzer 710 extracts fromthe selected zero or more Voice Message Record the Voice Message SenderIdentity as the result of the analysis.

In another embodiment, Voice Message Analyzer 710 retrieves a “list ofvoice messages being sent during the half hour before 3 p.m., Jun. 29,2005, the closing time for the New York Stock Exchange.” Voice MessageAnalyzer 710 selects from Datastore 750 all Voice Message Record thatincludes a Voice Message Action Record with Voice Message Action Timebetween 2:30 p.m., and 3 p.m., on Jun. 29, 2005, and with Voice MessageAction of Action Send. Voice Message Analyzer 710 retrieves from theselected zero or more Voice Message Record the Voice Message as theresult of the analysis.

In one embodiment, Voice Message Analyzer 710 answers the query “DidMaria Anderson listen to a voice message from telephone number“408-234-5678” on Jul. 10, 2001?” Voice Message Analyzer 710 selectsfrom Datastore 750 all Voice Message Record that includes Voice MessageRecipient Identity matching the name “Maria Anderson” and Voice MessageSender Identity matching the telephone number “408-234-5678”, and thatincludes a Voice Message Action Record with Voice Message Action ofAction Listen, and with Voice Message Action Time matching Jul. 10,2001. If one or more Voice Message Record is selected, Voice MessageAnalyzer 710 indicates a “yes” as the result of the analysis. If noVoice Message Record is selected, Voice Message Analyzer 710 indicates a“no” as the result of the analysis.

In yet another embodiment, Voice Message Analyzer 710 retrieves a “listof senders who had mentioned the word “Enron” and “short sell” in avoice message he or she sent on Aug. 17, 2003?” Voice Message Analyzer710 selects from Datastore 750 all Voice Message Record that includesVoice Message containing the audio patterns of “Enron” and “short sell”,and that includes a Voice Message Action Record with Voice MessageAction of Action Send, and with Voice Message Action Time matching “Aug.17, 2003”. Voice System retrieves from the selected zero or more VoiceMessage Record the Voice Message Sender Identity as the result of theanalysis.

In one other embodiment, Voice Message Analyzer 710 answers the query“Among those who has listened to a voice message from John Smith on May20, 2005, who has sent a voice message to the telephone number408-222-3333 on May 20, 2005 or May 21, 2005?” Voice Message Analyzer1010 selected from Datastore 750 a first group of Voice Message Recordthat includes Voice Message Sender Identity matching the name “JohnSmith” and that includes a Voice Message Action Record with VoiceMessage Action of Action Listen and with Voice Message Action Timematching “May 20, 2005”. Voice Message Analyzer 710 extracts the VoiceMessage Recipient Identity from the first group of Voice Message Record.Voice Message Analyzer 710 selects from Datastore 750 a second group ofVoice Message Record that includes Voice Message Recipient Identitymatching the telephone number “408-222-3333”, and that includes VoiceMessage Sender Identity matching one of the extracted Voice MessageRecipient Identity, and that includes a Voice Message Action Record withVoice Message Action of Action Send and with Voice Message Action Timematching “May 20, 2005” or “May 21, 2005”. Voice Message Analyzer 710retrieves from the second group of Voice Message Record the VoiceMessage Sender Identity as the result of the analysis.

In one embodiment, Voice Message Analyzer 710 retrieves a “list of allvoice messages of Dave Leach's family, where Dave's family's phonenumbers are 408-123-3456, 650-233-4455, and 650-233-6890”. Voice MessageAnalyzer 710 selects from Datastore 750 a first group of Voice MessageRecord with Voice Message Recipient Identity that matches “Dave Leach”,and with Voice Message Sender Identity that matches one of Dave'sfamily's phone numbers, and that includes a Voice Message Action Recordwith Voice Message Action of Action Receive. Voice Message Analyzer 710further selects from Datastore 750 a second group of Voice MessageRecord with Voice Message Sender Identity that matches “Dave Leach”, andwith Voice Message Recipient Identity that matches one of Dave'sfamily's phone numbers, and that includes a Voice Message Action Recordwith Voice Message Action of Action Send. Voice Message Analyzer 710retrieves from the first group and the second group of Voice MessageRecord the Voice Message as the result of the analysis.

In one embodiment, Voice Message Analyzer 710 retrieves “list of allvoice messages that match a pattern of being sent to competitors within24 hours of a board meeting.” Voice Message Analyzer 710 selects fromDatastore 750 a group of Voice Message Records with Voice MessageRecipient Identity that matches a list of competitors, with VoiceMessage Action Time within 24 hours of a date and time of a boardmeeting, and that includes a Voice Message Action of Action Sent. TheVoice Message Analyzer 710 retrieves from this group of Voice MessageRecords the Voice Message Sender Identity.

The analysis illustrated in FIG. 7 represents examples regarding usageinformation. It will be evident to skilled in the art to formulatesimilar analysis in order to provide other results regarding usageinformation.

FIG. 8 illustrates a process of reporting on a plurality of VoiceMessage Records.

Voice Message System includes a Voice Message Reporter 830. In oneembodiment, Voice Message Reporter 830 instructs Voice Message Analyzer810 to conduct an analysis. In one embodiment, Voice Message Reporter830 instructs the Voice Message Analyzer 850 based on a ReportSpecification.

In one embodiment, a Report Specification is based on corporate usagepolicies. In another embodiment, a Report Specification is based ongovernmental usage regulations. In another embodiment, a ReportSpecification is based on public service usage policies.

In one embodiment, a Report Specification includes an analysis to beconducted in order to generate a report. In another embodiment, a ReportSpecification includes a format of a report. In yet another embodiment,a Report Specification includes a method to publish a report. In oneother embodiment, a Report Specification includes timing information. Inone embodiment, the timing information includes a scheduled time togenerate a report, such as 5 pm on Jul. 26, 2005, daily at 6 am, orevery hour during business days. In one embodiment, Voice MessageReporter 830 includes a clock. In one embodiment, Voice Message Reporter830 instructs Voice Message Analyzer 810 to conduct an analysis includedin a Report Specification when the time of day indicated by the clockmatches the timing information in the Report Specification.

In one embodiment, Voice Message Reporter 830 connects to a ReportSpecification Datastore 890. Report Specification 890 stores a pluralityof Report Specification. In one embodiment, Voice Message Reporter 830retrieves a Report Specification from Report Specification Datastore890. In one embodiment, Voice Message Reporter 830 instructs VoiceMessage Analyzer 810 to conduct the analysis included in the retrievedReport Specification. In one embodiment, Voice Message Reporter 830receives the result of the analysis to generate a report. In oneembodiment, Voice Message Reporter 830 generates the report based on theformat and publishing method included in the Report Specification.

In another embodiment, an operator submits a Report Specification toVoice Message Reporter 830. In one embodiment, Voice Message Reporter830 instructs Voice Message Analyzer 810 to conduct the analysisincluded in the submitted Report Specification.

Foregoing described embodiments of the invention are provided asillustrations and descriptions. They are not intended to limit theinvention to precise form described. In particular, it is contemplatedthat functional implementation of invention described herein may beimplemented equivalently in hardware, software, firmware, and/or otheravailable functional components or building blocks, and that networksmay be wired, wireless, or a combination of wired and wireless. Othervariations and embodiments are possible in light of above teachings, andit is thus intended that the scope of invention not be limited by thisDetailed Description, but rather by Claims following.

1. A method for recording voice message usage information, comprising:(a) receiving by a voice message system a voice message from a voicemessage sender for a voice message recipient; (b) creating by the voicemessage system a first voice message record corresponding to the voicemessage and storing the first voice message record in a datastore, thedatastore storing a plurality of voice message records, wherein thefirst voice message record comprises: the voice message, a voice messagesender identity for the voice message sender, a voice message recipientidentity for the voice message recipient, at least a first voice messageaction record recording a send action for the voice message, and asending time comprising a time when the voice message sender sends thevoice message; (c) creating by the voice message system a second voicemessage record corresponding to the voice message and storing the secondvoice message record in the datastore, the second voice message recordcomprising: the voice message, the voice message sender identity for thevoice message sender, the voice message recipient identity for the voicemessage recipient, at least a second voice message action recordrecording a receive action for the voice message, and a current timecomprising a time when the receive action occurs; (d) receiving anidentity from a user by the voice message system; (e) determining by thevoice message system that the second voice message record comprises thevoice message recipient identity matching the received identity and thesecond voice message action record recording the receive action for thevoice message; and (f) updating by the voice message system the secondvoice message record with a third voice message action record recordinga listen action for the voice message.
 2. The method of claim 1, whereinthe voice message sender identity of the first voice message recordcomprises one or more of the following: a telephone number of atelephone used to submit a voice message; a user name based on thetelephone number; a calling party telephone number; a calling partyidentity; information concerning the voice message sender obtained fromthe voice message sender; and a sender identity for an electronicmessage containing the voice message.
 3. The method of claim 1, whereinthe voice message recipient identity of the second message recordcomprises: a user name based on a telephone number dialed by the voicemessage sender when sending the voice message.
 4. The method of claim 1,wherein the determining (e) comprises: (e1) determining by the voicemessage system that the second voice message record comprises the voicemessage recipient identity that matches the received identity and doesnot comprise any voice message action records recording the listenaction for the voice message.
 5. The method of claim 1, wherein theupdating (f) comprises: (f1) updating by the voice message system thesecond voice message record with the third voice message action recordrecording the listen action for the voice message after the user listensto the voice message in the second voice message record, the third voicemessage action record comprising a time when the user listens to thevoice message.
 6. The method of claim 5 wherein the second voice messageaction record further comprises a user attribute, wherein the userattribute comprises one or more of the following: a connection overwhich the user listens to the voice message in the second voice messagerecord; a location from where the user listens to the voice message; atelephone from where the user listens to the voice message; a callingparty telephone number from where the user listens to the voice message;and a calling party identity based on the calling party telephonenumber.
 7. The method of claim 1, further comprising: (g) receiving bythe voice message system a query concerning the plurality of voicemessage records, wherein the query comprises one or more audio patterns;and (h) selecting by the voice message system one or more voice messagerecords of the plurality of voice message records comprising a voicemessage comprising the audio patterns and comprising a voice messageaction record recording a send action for the voice message.
 8. Themethod of claim 7, wherein the voice message record further satisfiesthe query if it matches one or more of the following: a voice messagesender identity submitted in the query; a voice message recipientidentity submitted in the query; and a voice message action recordsubmitted in the query.
 9. The method of claim 7, further comprising:(i) conducting an analysis of the selected plurality of voice messagerecords based on a report specification.
 10. The method of claim 9,wherein the report specification comprises one or more of the following:a format of the report; a method for publishing the report; and timinginformation for generating the report.
 11. The method of claim 9,wherein the report specification is based on corporate usage policies,governmental usage policies, or public service policies.
 12. The methodof claim 1, further comprising: (g) determining by the voice messagesystem that the voice message of the second voice message record isdeleted; and (h) updating by the voice message system the second voicemessage record with a fourth voice message action record recording adelete action for the voice message, the fourth voice message actionrecord comprising at time when the delete action occurs.
 13. The methodof claim 1, further comprising: (g) determining by the voice messagesystem that the voice message of the second voice message record isforwarded by the voice message recipient to another voice messagerecipient; and (h) updating by the voice message system the second voicemessage record with a fourth voice message action record recording aforward action for the voice message, the fourth voice message actionrecord comprising a time when the forward action occurs.
 14. The methodof claim 13, further comprising: creating by the voice message system athird voice message record corresponding to the forwarded voice message,wherein the third voice message record comprises: the forwarded voicemessage, a second voice message sender identity comprising the voicemessage recipient identity, a second voice message recipient identityfor the other voice message recipient, and another voice message actionrecord recording a send action for the forwarded voice message, theother voice message action record comprising a time when the send actionfor the forwarded voice message occurs.
 15. The method of claim 1,wherein the second voice message action record further comprises a userattribute, wherein the receiving (d), the selecting (e), and theupdating (f) comprise: (d1) receiving from a first user by the voicemessage system a first user identity for the first user and a seconduser identity for a second user; (e1) determining by the voice messagesystem that the second voice message record comprises the voice messagerecipient identity matching the second user identity and the secondvoice message action record recording the receive action for the voicemessage; and (f1) updating the second voice message record with thethird voice message action record recording the listen action for thevoice message and setting the user attribute of the third action recordto the first user identity, the third voice message action recordcomprising a time when the first user listens to the voice message. 16.The method of claim 1, wherein the voice message sender identity of thefirst voice message cord comprises a location of the voice messagesender at the sending time.
 17. A system, comprising: a datastorestoring a plurality of voice message records; and a voice messagesystem, wherein the voice message system: receives a voice message froma voice message sender for a voice message recipient, creates a firstvoice message record corresponding to the voice message and storing thefirst voice message record in the database, wherein the first voicemessage record comprises: the voice message, a voice message senderidentity for the voice message sender, a voice message recipientidentity for voice message recipient, at least a first voice messageaction record recording a send action for the voice message, and asending time comprising a time when the voice message sender sends thevoice message, creates a second voice message record corresponding tothe voice message and storing the second voice message record in thedatastore, the second voice message record comprising: the voicemessage, the voice message sender identity for the voice message sender,the voice message recipient identity for the voice message recipient, atleast a second vice message action record recording a receive action forthe voice message, and a current time comprising a time when the receiveaction occurs, receive an identity from a user, determines that thesecond voice message record comprises the voice message recipientidentity matching the received identity and the second voice messageaction record recording the receive action for the voice message, andupdates the second voice message record with a third voice messageaction record recording a listen action for the voice message.
 18. Thesystem of claim 17, wherein the voice message sender identity of thefirst voice message record comprises one or more of the following: atelephone number of a telephone used to submit a voice message; a username based on the telephone number; a calling party telephone number; acalling party identity; information concerning a voice message senderobtained from the voice message sender; and a sender identity of anelectronic message containing the voice message.
 19. The system of claim17, wherein the voice message recipient identity of the second voicemessage record comprises: a user name based on a telephone number dialedby the voice message sender when sending the voice message.
 20. Thesystem of claim 17, further comprising a voice message analyzer foranalyzing the plurality of voice message records, wherein the voicemessage system further: receives a query concerning the plurality ofvoice message records, wherein the query comprises one or more audiopatterns; and selects one or more of the voice message records of theplurality of voice message records comprising the voice messagecomprising the audio patterns and comprising the voice message actionrecord recording a send action for the voice message.
 21. The system ofclaim 20, further comprising a voice message reporter for generatingreports on an analysis by the voice message analyzer.
 22. The system ofclaim 17, wherein the voice message system further: determines that thesecond voice message record comprises the voice message recipientidentity that matches the received identity and does not comprise anyvoice message action records recording the listen action for the voicemessage.
 23. The system of claim 17, wherein the voice message systemfurther: updates the second voice message record with the third voicemessage action record recording the listen action for the voice messageaction after the user listens to the voice message in the second voicemessage record, the third voice message action record comprising a timewhen the user listens to the voice message.
 24. The system of claim 17,wherein the voice message system further: determines that a voicemessage of the second voice message records is deleted; and updates thesecond voice message record with a fourth voice message action recordrecording a delete action for the voice message, the fourth voicemessage action record comprising a time when the delete action occurs.25. The system of claim 17, wherein the voice message system further:determines that the voice message of the second voice message record isforwarded by the voice message recipient to another voice messagerecipient; and updates the second voice message record with a fourthvoice message action record recording a forward action for the voicemessage, the fourth voice message action record comprising a time whenthe forward action occurs.
 26. The system of claim 25, wherein the voicemessage system further: creates a third voice message recordcorresponding to the forwarded voice message, wherein the third voicemessage record comprises: the forwarded voice message, a second voicemessage sender identity comprising the voice message recipient identity,a second voice message recipient identity for the other voice messagerecipient, and another voice message action record recording a sendaction for the forwarded voice message, the other voice message actionrecord comprising a time when the send action for the forwarded voicemessage occurs.
 27. The system of claim 17, wherein the second voicemessage action record further comprises a user attribute, wherein thevoice message system further: receives from a first user a first useridentity for the first user and a second user identity for a seconduser; determines that the second voice message record comprises thevoice message recipient identity matching the second user identity andthe second voice message action record recording the receive action forthe voice message; and updates the second voice message record with thethird voice message action record recording the listen action for thevoice message and setting the user attribute of the third action recordto the first user identity, the third voice message action recordcomprising a time when the first user listens to the voice message. 28.The system of claim 17, wherein the voice message sender identity of thefirst voice message cord comprises a location of the voice messagesender at the sending time.
 29. A method for recording voice messageusage information, comprising: (a) receiving by a voice message system avoice message from a voice message sender for a voice message recipient;(b) storing by the voice message system a first voice message recordcorresponding to the voice message, wherein the first voice messagerecord comprises: the voice message, a voice message sender identity, avoice message recipient identity, a voice message send action record,and a time when the voice message sender sent the voice message; (c)storing by the voice message system a second voice message recordcorresponding to the voice message, the second voice message recordcomprising: the voice message, the voice message sender identity, thevoice message recipient identity, a voice message receive action record,and a current time; (d) determining by the voice message system that thesecond voice message record comprises the voice message recipientidentity matching an identity received from a user and the voice messagereceive action record; and (e) updating by the voice message system thesecond voice message record with a voice message listen action record.